package com.typing.service;

import com.typing.entity.UserEntity;

import java.util.List;

public interface UserService {

	/**
	 * 添加用户
	 *
	 * @param user
	 * @return 数据库更改条数
	 */
	int addUser(UserEntity user);


	/**
	 * 重置密码
	 *
	 * @param user
	 * @return
	 */
	int updatePassword(UserEntity user);

	/**
	 * 查询用户信息
	 *
	 * @param user
	 * @return 查询到的用户
	 */
	UserEntity userLogin(UserEntity user);

	/**
	 * 获取设置tag后的新用户信息
	 *
	 * @param user
	 * @return
	 */
	UserEntity getNewUser(UserEntity user);

	/**
	 * 用于查看手机号是否注册
	 *
	 * @param user
	 * @return 注册了的用户信息，没注册为null
	 */
	UserEntity isRegister(UserEntity user);

	/**
	 * 查看tag值
	 *
	 * @param tag
	 * @return
	 */
	UserEntity selectTag(String tag);

	/**
	 * 设置tag值
	 *
	 * @param user
	 * @return
	 */
	int setTag(UserEntity user);

	/**
	 * 教师排名
	 */
	List<UserEntity> selectRankingTeacher();

	/**
	 * 学生排名
	 *
	 * @return
	 */
	List<UserEntity> selectRankingStudent();

	/**
	 * 设置分数
	 *
	 * @param user
	 * @return
	 */
	int setScore(UserEntity user);

	/**
	 * 查询全部用户
	 *
	 * @return
	 */
	List<UserEntity> selectAllUser();

	/**
	 * 根据id查询用户
	 *
	 * @param id
	 * @return
	 */
	UserEntity selectUserById(Integer id);
}
